package com.xmut.mall.coupon.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xmut.mall.coupon.entity.PageDataEntity;
import com.xmut.mall.coupon.searchparams.SellerPageDataSearchParam;
import com.xmut.mall.coupon.utils.RespBean;
import com.xmut.mall.coupon.vo.AddPageDataVo;
import com.xmut.mall.coupon.vo.PageVO;
import com.xmut.mall.coupon.vo.SaveFloorTemplateVo;

import java.util.Map;

public interface PageDataService extends IService<PageDataEntity> {
    /**
     * 获取首页数据
     * @return
     */
    RespBean getIndexData();

    /**
     * 获取卖家端的店铺装修数据
     * @param vo
     * @param param
     * @return
     */
    RespBean getSellerPageDataByPage(PageVO vo, SellerPageDataSearchParam param);

    /**
     * 添加装修数据
     * @param vo
     * @return
     */
    RespBean addPageData(AddPageDataVo vo);

    /**
     * 编辑页面装修数据的名称
     * @param params
     * @return
     */
    RespBean editPageDataName(Map<String, Object> params);

    /**
     * 删除装修数据
     * @param id
     * @return
     */
    RespBean deletePageData(Long id);

    /**
     * 改变页面装修发布状态
     * @param param
     * @return
     */
    RespBean updatePageDataShow(Map<String, Object> param);

    /**
     * 根据ID获取页面装修数据
     * @param id
     * @return
     */
    RespBean getPageData(Long id);

    /**
     * 保存用户添加的装修模板
     * @param vo
     * @return
     */
    RespBean saveFloorTemplate(SaveFloorTemplateVo vo);

    /**
     * 根据Map参数获取装修数据
     * @param params
     * @return
     */
    RespBean getPageDataByMap(Map<String, Object> params);
}
